// pages/cart/cart.js
const api = require('../../config/api')
const util = require('../../utils/util')

Page({
    data: {
        cartGoods: [],
        cartTotal: {
            goodsCount: 0,
            goodsAmount: 0.00,
            checkedGoodsCount: 0,
            checkedGoodsAmount: 0.00
        },
        isEditCart: false,
        checkedAllStatus: true,
    },
    onShow() {
        this.getData()
    },

    // 点击删除
    deleteCart(e){
        let productId=[]
        this.data.cartGoods.forEach(item=>{
            if(item.checked){
                productId.push(item.productId)
            }    
        })
        let that=this
        wx.showModal({
            title: '提示',
            content: '确认删除商品吗',
            success (res) {
              if (res.confirm) {
                util.request(api.CartDelete,{
                    productIds:productId
                },"POST").then(res=>{
                    // console.log(res);
                    if (res.errno === 0) {
                        that.setData({
                            cartGoods: res.data.cartList,
                            cartTotal: res.data.cartTotal
                        });
                    }
                })
              } 
            }
          })
        //   let productId=[]
        //   this.data.cartGoods.forEach(item=>{
        //       if(item.checked){
        //           productId.push(item.productId)
        //       }    
        //   })
        //   let that=this
        //   util.request(api.CartDelete,{
        //       productIds:productId
        //   },"POST").then(res=>{
        //       // console.log(res);
        //       if (res.errno === 0) {
        //           that.setData({
        //               cartGoods: res.data.cartList,
        //               cartTotal: res.data.cartTotal
        //           });
        //       }
        //   })
    },
    // 点击全选
    checkedAll(e) {
        let productId = [];
        this.data.cartGoods.forEach(item => {
            productId.push(item.productId)
        })
        let checked = 0;
        if (this.data.checkedAllStatus) {
            checked = 0
        } else {
            checked = 1
        }
        let that = this;
        util.request(api.CartChecked, {
            productIds: productId,
            isChecked: checked
        }, 'POST').then(res => {
            if (res.errno === 0) {
                that.setData({
                    cartGoods: res.data.cartList,
                    cartTotal: res.data.cartTotal,
                    checkedAllStatus: !this.data.checkedAllStatus
                });
            }
        })
    },
    // 点击每个商品按钮改变checked状态
    checkeditem(e) {
        // console.log(e);
        let productId = [e.target.dataset.it.productId];
        let checked = 0;
        if (e.target.dataset.it.checked) {
            checked = 0
        } else {
            checked = 1
        }
        let that = this;
        util.request(api.CartChecked, {
            productIds: productId,
            isChecked: checked
        }, 'POST').then(res => {
            // console.log(res);
            if (res.errno === 0) {
                that.setData({
                    cartGoods: res.data.cartList,
                    cartTotal: res.data.cartTotal
                });
                this.findAllChecked()
            }
        })
    },
    // 判断全选是否该选中
    findAllChecked() {
        let allChecked = this.data.cartGoods.every(item => item.checked == true)
        // console.log(allChecked);
        this.setData({
            checkedAllStatus: allChecked
        })
    },
    // 点击编辑和点击完成
    editCart() {
        this.setData({
            isEditCart: !this.data.isEditCart
        })
        if(this.data.isEditCart){
            let productId = [];
            this.data.cartGoods.forEach(item => {
                productId.push(item.productId)
            })
            let checked = 0;
            let that = this;
            util.request(api.CartChecked, {
                productIds: productId,
                isChecked: checked
            }, 'POST').then(res => {
                if (res.errno === 0) {
                    that.setData({
                        cartGoods: res.data.cartList,
                        cartTotal: res.data.cartTotal,
                    });
                    this. findAllChecked()
                }
            })
        }
    },
    // 改变步进器的值
    onChange(e) {
        let productId=e.target.dataset.item.productId
        let goodsId=e.target.dataset.item.goodsId
        let id=e.target.dataset.item.id
        let number=e.detail
            let that = this;
          util.request(api.CartUpdate,{
            "productId":productId,
            "goodsId":goodsId,
            "number":number,
            "id":id
            },"POST").then(res=>{
            if(res.errno==0){
             this.getData()   
            }
          })
    },
    // 获取数据
    getData() {
        let that = this;
        util.request(api.CartIndex).then(res => {
            // console.log(res);
            if (res.errno === 0) {
                that.setData({
                    cartGoods: res.data.cartList,
                    cartTotal: res.data.cartTotal
                });
                this.findAllChecked()
            }
        })
    }

})







// Page({
//     data: {
//       cartGoods:[],
//       cartTotal: {
//         goodsCount: 0,
//         goodsAmount: 0.00,
//         checkedGoodsCount: 0,
//         checkedGoodsAmount: 0.00
//       },
//       isEditCart: false,
//       checkedAllStatus: true,
//     },
//     onShow(){
//       this.getData()
//     },
//     // 点击全选
//     checkedAll(){
//     // this.data.cartGoods.forEach(item=>item.checked=!this.data.checkedAllStatus)
//     //   this.setData({
//     //     checkedAllStatus:!this.data.checkedAllStatus,
//     //     cartGoods:this.data.cartGoods
//     //   })
//     },

//     // 更新购物车的商品
//     CartUpdate(){
//         let that = this;
//       util.request(api.CartUpdate).then(res=>{
//         // console.log(res);
//         if (res.errno === 0) {
//           that.setData({
//             cartGoods: res.data.cartList,
//             cartTotal: res.data.cartTotal
//           });
//         }
//       })
//     },

//     // 点击每个商品按钮改变checked状态
//     checkeditem(event){
//       let itemChecked=this.data.cartGoods[event.target.dataset.index].checked
//       this.setData({
//         [`cartGoods[${event.target.dataset.index}].checked`]:!itemChecked
//       })
//       // 点击每个商品的按钮改变全选的状态
//       if(this.data.cartGoods.find(item=>item.checked==false)){
//         this.setData({
//           checkedAllStatus:false
//         })
//       }else{
//         this.setData({
//           checkedAllStatus:true
//         })
//       }
//     },
//     // 点击编辑和点击完成
//     editCart(){
//       this.setData({
//         isEditCart:!this.data.isEditCart
//       })
//     },
//     // 改变步进器的值
//     onChange(event) {
//       //  console.log(event);
//       this.setData({
//         [`cartGoods[${event.target.dataset.index}].number`]:event.detail
//       })
//     //   let newCheckedGoodsCount=this.data.cartGoods.forEach(item=>{
//     //     // ``````````````````````````````````
//     //   })
//     },
//     // 获取数据
//     getData(){
//       let that = this;
//       util.request(api.CartIndex).then(res=>{
//         // console.log(res);
//         if (res.errno === 0) {
//           that.setData({
//             cartGoods: res.data.cartList,
//             cartTotal: res.data.cartTotal
//           });
//         }
//       })
//     }

// })